/**
 * React 组件更新机制：只要父组件发生更新，子组件就会无条件的一起更新
 *
 * 1. 子组件 props 变化时更新过程：组件代码执行 → JSX diff (配合虚拟 DOM) → 渲染(变化后的内容) 执行 DOM 操作
 * 2. 子组件 props 无变化更新过程：组件代码执行 → JSX diff (配合虚拟 DOM) 无 DOM 操作
 *
 * 注意：此处更新指的是组件代码执行、JSX 进行 Diff 操作 (纯 JS 操作，速度快、不会对性能产生影响)
 *
 * 如果组件 props 改变了，那么，该组件就必须要更新，才能接收到最新的 props
 * 但是如果组件 props 没有改变时，组件也要进行一次更新，实际上，这一次更新是没有必要的
 *
 * 如果要避免组件 props 没有变化而进行的不必要变化(Diff)，这种情况下，就要使用 React.memo 高阶组件
 *
 * 注意：
 * 如果是 class 组件，可以使用 PureComponent 或者 shouldComponentUpdate 钩子函数实现
 */
